@-webkit-keyframes fade-in {
  from {
    visibility: hidden;
    opacity: 0;
  }
  1% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes fade-in {
  from {
    visibility: hidden;
    opacity: 0;
  }
  1% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}
@-webkit-keyframes fade-out {
  from {
    opacity: 1;
    visibility: visible;
  }
  99% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
    visibility: visible;
  }
  99% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}
.fade-in {
  -webkit-animation: fade-in 200ms ease-in-out forwards;
          animation: fade-in 200ms ease-in-out forwards;
}

.fade-out {
  -webkit-animation: fade-out 200ms ease-in-out forwards;
          animation: fade-out 200ms ease-in-out forwards;
}

html {
  font-size: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* makes the size of elements including border & padding in the final width */
}

/* to inherit the box-sizing */
*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  background-color: #19161f;
  margin: 0;
  padding: 0;
  font-family: "Silkscreen", monospace;
  font-size: 1.1em;
  color: #fff;
  line-height: 1.3;
}

a, a:visited, a:hover {
  text-decoration: none;
  text-transform: uppercase;
  color: #fff;
}

h2 {
  font-size: 2.1em;
  text-align: center;
  width: 100%;
  margin-top: 0;
  margin-bottom: 1em;
}

h3 {
  font-size: 1.1em;
  text-align: center;
  width: 100%;
  margin-bottom: 0.5em;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.flex-jc-sb {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.flex-jc-c {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.flex-ai-c {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.button {
  width: 300px;
  background: #ff12b8;
  padding: 0.875em 2.1875em;
  text-align: center;
  border: none;
  border-radius: 0%;
  cursor: pointer;
  font-family: "Silkscreen";
  font-size: 1.6em;
  font-weight: 700;
}

.biglogo img {
  width: 300px;
  margin-bottom: 0;
  vertical-align: bottom;
}

.hero {
  width: 100%;
  height: 100vh;
  position: relative;
  padding: 0 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.content {
  width: 100%;
  text-align: center;
  margin-bottom: 2em;
  max-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.bgvideo {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: 0;
  z-index: -1;
}
@media (min-aspect-ratio: 16/9) {
  .bgvideo .bgvideo {
    width: 100%;
    height: auto;
  }
}
@media (max-aspect-ratio: 16/9) {
  .bgvideo .bgvideo {
    width: auto;
    height: 100%;
  }
}

.infocontent {
  width: 100%;
  text-align: justify;
  margin-top: 1em;
  margin-bottom: 2em;
  padding: 0 5%;
  max-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.infocontent__inner {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.infocontent__inner__left {
  padding: 20px;
  -webkit-box-flex: 50%;
      -ms-flex: 50%;
          flex: 50%;
}
.infocontent__inner__left .purplebox {
  background-color: #581778;
  padding: 1em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.infocontent__inner__right {
  padding: 20px;
  -webkit-box-flex: 50%;
      -ms-flex: 50%;
          flex: 50%;
}
.infocontent__inner__right img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 100%;
}
@media (max-width: 53.9375em) {
  .infocontent .infocontent__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.pixelart {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 1.4em 1em 1.5em auto;
}
.pixelart p {
  color: #ff12b8;
  margin: 0.5em;
  text-align: center;
  width: 100%;
}
.pixelart img {
  margin: 0.5em;
  max-width: 100%;
  height: auto;
}

.infocontent__inner .gallery-item {
  width: 30%;
  padding: 0;
  margin-top: 1em;
  max-width: 100%;
  overflow: hidden;
}
.infocontent__inner .gallery-item img {
  width: 100%;
  height: auto;
}
.infocontent__inner .gallery-item p {
  text-align: center;
}
.infocontent__inner .gallery-item .queque {
  color: #581778;
}
@media (max-width: 53.9375em) {
  .infocontent__inner .gallery-item {
    width: 100%;
    -ms-flex-item-align: center;
        align-self: center;
    margin: 0 auto;
  }
}

.gallery-item:nth-child(2) {
  display: block;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -ms-flex-item-align: auto;
      align-self: auto;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}

.gallery-item:nth-child(3) {
  display: block;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -ms-flex-item-align: auto;
      align-self: auto;
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
          order: 0;
}

.infocontent__inner .card {
  width: 22%;
  min-width: 15.625em;
  padding: 2%;
  margin-top: 1em;
  margin-bottom: 2em;
  max-width: 100%;
  overflow: hidden;
  background-color: #fff;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.infocontent__inner .card h3 {
  color: #ff12b8;
  margin-top: 0;
  margin-bottom: 2em;
}
.infocontent__inner .card img {
  width: 100%;
  height: auto;
}
@media (max-width: 53.9375em) {
  .infocontent__inner .card {
    width: 100%;
    -ms-flex-item-align: center;
        align-self: center;
    margin: 1em auto;
    padding: 5%;
  }
}

.spacer {
  background-color: #fff;
  width: 100%;
  height: 0.5em;
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
}

.spacerbottom {
  background-color: transparent;
  width: 100%;
  height: auto;
  text-align: center;
  margin: 0;
}

.spacerbottom img {
  text-align: center;
  vertical-align: top;
}

.formcontainer {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: transparent;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}
.formcontainer .form-group {
  text-align: left;
  margin-bottom: 1em;
}

form {
  width: 25em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #581778;
  color: #ff12b8;
  padding: 2em;
}
form label {
  line-height: 2.5em;
}
form p {
  margin-bottom: 3em;
  text-align: center;
  color: #fff;
  font-size: 1.6em;
}
form small {
  color: #000;
  margin-top: 1em;
}
form .form-control {
  width: 100%;
  height: 4em;
  padding: 1em;
  border-radius: 0;
  border: 3px solid #000;
}
form .cta-button {
  margin-top: 2em;
  width: 100%;
}
form .cta-button a, form .cta-button a:visited, form .cta-button a:active {
  color: #000;
}

footer {
  background-color: #fff;
  height: 12em;
  margin-top: 5em;
  color: #19161f;
}
footer p {
  width: 100%;
  margin: 1em auto 0 0;
  text-align: center;
  vertical-align: middle;
  background-color: #fff;
}
@media (max-width: 53.9375em) {
  footer p {
    display: block;
    white-space: break-spaces;
    margin: 0px;
  }
}
footer a, footer a:visited, footer a:active, footer a:hover {
  color: #19161f;
  margin: 0 2em 0em 2em;
  text-align: center;
}
@media (max-width: 53.9375em) {
  footer a, footer a:visited, footer a:active, footer a:hover {
    display: block;
    padding: 0.5em;
    margin: 0px;
  }
}
footer .spacertop {
  background-color: #19161f;
  width: 100%;
  height: auto;
  text-align: center;
  margin: 0;
  margin-bottom: 3.5em;
}
@media (max-width: 53.9375em) {
  footer .spacertop {
    margin-bottom: 0px;
  }
}
footer .spacertop img {
  text-align: center;
  vertical-align: bottom;
}

@keyframes fade-in {
  from {
    visibility: hidden;
    opacity: 0;
  }
  1% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
    visibility: visible;
  }
  99% {
    visibility: visible;
    opacity: 0;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}
.fade-in {
  -webkit-animation: fade-in 200ms ease-in-out forwards;
          animation: fade-in 200ms ease-in-out forwards;
}

.fade-out {
  -webkit-animation: fade-out 200ms ease-in-out forwards;
          animation: fade-out 200ms ease-in-out forwards;
}

.header {
  margin: 0;
}
.header nav {
  height: 4.375em;
  background-color: #581778;
  padding: 0.625em 1.25em;
  border-bottom: 2px solid #ff12b8;
}
.header__logo img {
  margin: 0px 0 10px auto;
  padding: 0;
}
.header__links {
  text-align: center;
  margin: 0 auto;
  width: 100%;
}
.header__links a {
  position: relative;
  color: #fff;
  font-size: 1.1em;
  -webkit-transition: color 200ms ease-in-out;
  transition: color 200ms ease-in-out;
}
.header__links a:hover {
  border-bottom: 7px solid #ff12b8;
  color: #ffde59;
  padding-bottom: 1em;
}
.header__links a:not(:last-child) {
  margin-right: 30px;
}

.cta-button {
  width: 300px;
  background: #ffde59;
  padding: 0.875em 2.1875em;
  text-align: center;
  border: none;
  border-radius: 0%;
  cursor: pointer;
  font-family: "Silkscreen";
  font-size: 1.6em;
  font-weight: 700;
}
@media (max-width: 53.9375em) {
  .cta-button {
    width: 100%;
    -ms-flex-item-align: center;
        align-self: center;
    margin: 0 auto;
  }
}

.header__menu > span {
  display: block;
  width: 26px;
  height: 3px;
  background-color: #fff;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
  -webkit-transform-origin: 1px;
          transform-origin: 1px;
}
.header__menu > span:hover {
  color: #ff12b8;
}
.header__menu > span:not(:last-child) {
  margin-bottom: 5px;
}
.header__menu.open > span:first-child {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.header__menu.open > span:nth-child(2) {
  opacity: 0;
}
.header__menu.open > span:last-child {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: 3px 2px;
          transform-origin: 3px 2px;
}

.floatmenu {
  background-color: #fff;
  padding: 0;
  margin: 0;
  position: relative;
  min-width: 100%;
}
.floatmenu a {
  color: #000;
  padding: 0.625em;
  display: block;
  text-align: center;
}

.overlay {
  opacity: 0;
  position: absolute;
  top: 4.375em;
  right: 0px;
  bottom: 0px;
  left: 0px;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#19161f), to(transparent));
  background-image: linear-gradient(#19161f, transparent);
}

@media (max-width: 53.9375em) {
  .hide-for-mobile {
    display: none;
  }
}

@media (min-width: 54em) {
  .hide-for-desktop {
    display: none;
  }
}

.has-fade {
  visibility: hidden;
}